<%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@page pageEncoding="UTF-8"%>
<%@include file="../WEB-INF/jspf/controlesessao.jspf"%>
<c:catch var ="catchException">
    <fmt:parseDate var="dI" value="${param.data_inicio}" pattern="dd/MM/yyyy"/>
    <fmt:parseDate var="dF" value="${param.data_fim}" pattern="dd/MM/yyyy"/>
    <c:if test="${param.operacao=='salvar'}">
        <sql:update var="update" dataSource="jdbc/dbo_MicrosoftSQLServer">
            update turmas
            set codigo_turma=?,
            inicio_turma=?,
            id_curso=?,
            id_unidade=?,
            id_turno=?,
            id_cidade=?,
            alunos_turma=?,
            cliente_turma=?,
            gratuita_turma=?,
            id_tipoturma=?,
            id_regra=?
            where id_turma=?
            <sql:param value="${param.codigo_turma}"/>
            <sql:dateParam value="${dI}"/>
            <sql:param value="${param.id_curso}"/>
            <sql:param value="${param.id_unidade}"/>
            <sql:param value="${param.id_turno}"/>
            <sql:param value="${param.id_cidade}"/>
            <sql:param value="${param.alunos_turma}"/>
            <sql:param value="${param.cliente_turma}"/>
            <sql:param value="${param.gratuita_turma}"/>
            <sql:param value="${param.id_tipoturma}"/>
            <sql:param value="${param.id_regra}"/>
            <sql:param value="${param.id_turma}"/>
        </sql:update>

        <sql:update var="delete" dataSource="jdbc/dbo_MicrosoftSQLServer">
            delete from Horarios_Turmas
            where id_turma=?
            <sql:param value="${param.id_turma}"/>
        </sql:update>
        <c:forEach var="horarios" items="${paramValues['horarios']}">

            <c:set var="parametros" value="${fn:split(horarios,'_')}"/>
            <c:set var="id_modulo" value="${parametros[0]}"/>
            <c:set var="id_componente" value="${parametros[1]}"/>
            <c:set var="id_horario" value="${parametros[2]}"/>
            <c:set var="dia" value="${parametros[3]}"/>
            <c:if test="${!empty id_horario}">
                <sql:update var="insert" dataSource="jdbc/dbo_MicrosoftSQLServer">
                    insert into Horarios_Turmas (id_turma,id_horario,dia, id_modulo,id_componente) values(?,?,?,?,?)
                    <sql:param value="${param.id_turma}"/>
                    <sql:param value="${id_horario}"/>
                    <sql:param value="${dia}"/>
                    <sql:param value="${id_modulo}"/>
                    <sql:param value="${id_componente}"/></sql:update>
            </c:if>
            
        </c:forEach>
    </c:if>

    <c:if test="${param.operacao=='estruturar'}">
        <sql:update var="update" dataSource="jdbc/dbo_MicrosoftSQLServer">
            exec dbo.sp_gerar_alocacao ?
            <sql:param value="${param.id_turma}"/>
        </sql:update>
        <p>Turma ${param.id_turma} <b>reestruturada</b>, confira os dados gerados.</p>

    </c:if>
    <c:if test="${param.operacao=='ordenar'}">
        <sql:update var="update" dataSource="jdbc/dbo_MicrosoftSQLServer">
            exec dbo.sp_gerar_reserva ?
            <sql:param value="${param.id_turma}"/>
        </sql:update>
        <p>Turma ${param.id_turma} <b>ordenada</b>, confira os dados gerados.  </p>

    </c:if>
    <p>Registro Salvo com sucesso! ${param.operacao}"</p>
    <form name="form_atualizar" id="form_atualizar" method="post" action="fm_update_turmas.jsp">
        <input name="chave" value="${param.id_turma}"  type="hidden">
        <input type="submit" value="Ok" class="submit">
        <input type="hidden" id="token" name="token" value="${sessionScope.token}" /> </form>    
    </c:catch>
    <c:if test = "${catchException!=null}">
    Erro : Não foi possível realizar a alteração.<br><br>
    <p  style="color:red">${fn:substringAfter(catchException,"BD:")}</p>
    ${catchException}
</c:if>
